package hamsterwrench.data.rpg;

public class Attack {

	
	
	//enums
	public enum AttackAnimationPattern{
		CYCLE_FORWARD, CYCLE_BACKWARD, OSCILLATE, RANDOM
	}
	
	public enum AttackTargetClass{
		ENEMY, ALLY_NOT_DEAD, SELF, ALL, ALLY_INCLUDING_DEAD, ALLY_NOT_SELF, REVENGE_LAST_HIT, REVENGE_WHOLE_BATTLE, PREVIOUS_TARGET,
		RECORDED_TARGET, DEAD_ALLIES, THANK_LAST_CURE, THANK_WHOLE_BATTLE
	}
	
	public enum AttackTargetSetting{
		FOCUSED, SPREAD, OPTIONAL_SPREAD, RANDOM, FIRST_TARGET
	}
	
	public enum AttackDamageEquation{
		NORMAL, BLUNT, SHARP, PURE_DAMAGE, NO_DAMAGE, PERCENT_OF_MAX, PERCENT_OF_CURRENT
	}
	
	public enum AttackAimMath{
		NORMAL, POOR, BAD, NEVER_MISSES, MAGIC
	}
	
	public enum AttackBaseAttackStat{
		ATTACK_, MAGIC_, HP_, LOST_HP, RANDOM, ONE_HUNDRED, HP, MP, ATTACK, AIM, DEFENSE, DODGE, MAGIC, MAGIC_DEFENSE, SPEED, COUNTER,
		FOCUS, XHITS, PREVIOUS_ATTACK, LAST_DAMAGE_TO_ATTACKER, LAST_DAMAGE_TO_TARGET, LAST_CURE_TO_ATTACKER, LAST_CURE_TO_TARGET
	}
	
	public enum AttackAttackerAnimation{
		SRTIKE, CAST, DASH_IN, SPIN_STRIKE, JUMP, LAND, NULL, STANDING_CAST, TELEPORT
	}
	
	public enum AttackAnimation{
		NORMAL, PROJECTILE, REVERSE_PROJECTILE, DROP, RING, WAVE, SCATTER, SEQUENTIAL_PROJECTILE, METEOR, DRIVEBY, NULL
	}
	
	public enum AttackTargetStat{
		HP, MP, ATTACK, AIM, DEFENSE, DODGE, MAGIC_, MAGIC_DEFENSE, SPEED, COUNTER, FOCUS, XHITS, POISON, REGEN, STUN, MUTE
	}
	
	public enum AttackPreferredTarget{
		DEFAULT, FIRST, CLOSEST, FARTHEST, RANDOM, WEAKEST, STRONGEST, WEAKEST_PERCENT, STRONGEST_PERCENT
	}
	
	public enum AttackBaseDefenseStat{
		HP, MP, ATTACK, AIM, DEFENSE, DODGE, MAGIC_, MAGIC_DEFENSE, SPEED, COUNTER, FOCUS, XHITS
	}
	
	public enum AttackTagCondition{
		NEVER, ALWAYS, HIT, MISS, KILL
	}
	
	public enum AttackStatForWeakStrongCheck{
		SAME_AS_TARGET_STAT, HP, MP, ATTACK, AIM, DEFENSE, DODGE, MAGIC_, MAGIC_DEFENSE, SPEED, COUNTER, FOCUS, XHITS, POISON, REGEN, STUN, MUTE
	}
	
	public enum AttackChainConditionType{
		NONE, BOTH_TAGS, GREATER_THAN, LESS_THAN, GREATER_THAN_PERCENT, LESS_THAN_PERCENT
	}
	
	public enum AttackTransmogrifyStatAction{
		KEEP, RESTORE_TO_NEW_MAX, KEEP_PERCENTAGE, CAP_TO_NEW_MAX
	}
}
